home *** CD-ROM | disk | FTP | other *** search
/ PC Direct 1995 May / PC Direct CD-ROM (May 1995).ISO / ipe / misc / strtl3.exe / STRTL3.TXT
Encoding:
Text File  |  1994-07-28  |  13.0 KB  |  373 lines

  1.  
  2.               NOVELL TECHNICAL INFORMATION DOCUMENT
  3.  
  4. TITLE:              STREAMS, TLI, SPXS, IPXS NLM Update
  5. DOCUMENT ID:        TID014113
  6. DOCUMENT REVISION:  B
  7. DATE:               27JUL94
  8. ALERT STATUS:       Yellow
  9. INFORMATION TYPE:   Symptom Solution
  10. README FOR:         STRTL3.EXE
  11.  
  12. NOVELL PRODUCT and VERSION:
  13. NetWare 3.11
  14. NetWare 3.12
  15. NetWare 4.01
  16. NetWare SFT III 3.11
  17. NetWare Asynchronous Communication Services (NACS) 3.0
  18. NetWare for SAA 1.2
  19. NetWare for SAA 1.3
  20.  
  21. ABSTRACT:
  22.  
  23. STRTL3.EXE contains all the fixed and patches found in STRTL1.EXE and
  24. STRTL2.EXE plus some new fixes and patches to handle all SPX, TLI, and STREAMS
  25. communication and server problems.  Symptom solution information for the
  26. current patches and a history of previous patches are included in this
  27. document.
  28.  
  29. ------------------------------------------------------------------------------
  30. DISCLAIMER
  31. THE ORIGIN OF THIS INFORMATION MAY BE INTERNAL OR EXTERNAL TO NOVELL.  NOVELL
  32. MAKES EVERY EFFORT WITHIN ITS MEANS TO VERIFY THIS INFORMATION.  HOWEVER, THE
  33. INFORMATION PROVIDED IN THIS DOCUMENT IS FOR YOUR INFORMATION ONLY.  NOVELL
  34. MAKES NO EXPLICIT OR IMPLIED CLAIMS TO THE VALIDITY OF THIS INFORMATION.
  35. ------------------------------------------------------------------------------
  36. ____________________________________
  37. SYMPTOM
  38.  
  39. The system hangs.
  40.  
  41. SYMPTOM
  42.  
  43. When both ends try to send disconnect request, race conditions occur.
  44.  
  45. SOLUTION
  46.  
  47. Apply the new SPXS.NLM.
  48.  
  49. ____________________________________
  50. SYMPTOM
  51.  
  52. After SPX terminated a connection, the following abend message was displayed:
  53.  
  54. MESSAGE
  55.  
  56.      MS Engine was handed an ECB it did not own
  57.  
  58. CAUSE
  59.  
  60. A race condition and error exit path existed.
  61.  
  62. SOLUTION
  63.  
  64. Make sure the terminate ack was being returned to the LSL through IPX, rather
  65. than being posted to the application socket.
  66.  
  67. Apply SPXFIX2.NLM and SPXSFT1.NLM files included in this document.
  68.  
  69. ____________________________________
  70. SYMPTOM
  71.  
  72. When SPX was terminating a connection, it was failing with an 0xEC rather than
  73. 0xED status.
  74.  
  75. SOLUTION
  76.  
  77. Make sure the state check to toss data packets coming into a terminating
  78. connection did not toss the ACK.
  79.  
  80. Apply the SPXSFT2.NLM.
  81.  
  82. ____________________________________
  83. SYMPTOM
  84.  
  85. SPX ignored a terminate ACK.
  86.  
  87. CAUSE
  88.  
  89. A problem was introduced in SPXDDFIX 1.0.
  90.  
  91. SOLUTION
  92.  
  93. Apply SPXDDFIX.NLM 2.0.
  94.  
  95. SPXDDFIX.NLM 2.0 correctly handles the terminate acknowledgement packet.
  96.  
  97. ____________________________________
  98. SYMPTOM
  99.  
  100. If the session did not exist, SPX failed to interpret terminate ACKs as system
  101. packets.
  102.  
  103. CAUSE
  104.  
  105. When an application errors out because the session does not exist, SPX posts
  106. the system buffer to the socket rather than returning it to the Link Support
  107. Layer (LSL).
  108.  
  109. SOLUTION
  110.  
  111. Apply the SPXNSFIX.NLM and SPXNSSFT.NLM.
  112.  
  113. Solution Specifics:
  114.  
  115. The SPXNSFIX.NLM for NetWare 4.01, 3.12, and 3.11 and SPXNSSFT.NLM fix the way
  116. that SPX handles the Terminate Acknowledgement packets on sessions that do not
  117. exist.
  118.  
  119. ____________________________________________________________
  120.  
  121. Self-Extracting File Name:  STRTL3.EXE     Revision:  B
  122.  
  123. Files Included     Size     Date      Time
  124.  
  125. \
  126.   STRTL3.TXT         (This File)
  127. \3.1X\
  128.      TLI.NLM      12474   09-14-93   10:43a
  129.     IPXS.NLM       8149   08-10-93    7:53a
  130.     SPXS.NLM      24238   05-17-94    9:58a
  131.  STREAMS.NLM      53566   07-20-93    4:19p
  132. \3.1X\3.11\
  133.   XMDFIX.NLM       1546   02-24-94    8:30a
  134.  SPXFIX2.NLM       1727   11-23-93    9:26a
  135. PATCHMAN.NLM       9632   02-04-93   10:38a
  136. SPXDDFIX.NLM       1151   03-10-94    9:44a
  137. SPXFSFIX.NLM       1155   08-20-93    2:16p
  138. SPXLISFX.NLM       1016   08-20-93    2:22p
  139. SPXMSFIX.NLM        988   02-14-94   10:02a
  140. SPXNSFIX.NLM       1047   05-26-94    8:56a
  141. \3.1X\3.12\
  142.    PM312.NLM       9221   03-24-94   11:06a
  143.  SPXFIX2.NLM       1035   11-23-93    9:13a
  144. SPXCONFG.NLM       4162   07-02-93    9:40a
  145. SPXDDFIX.NLM       1148   03-10-94    9:48a
  146. SPXNSFIX.NLM       1044   05-26-94    8:45a
  147. \3.1X\SFTIII.311\
  148.   MSSHIM.NLM       1524   11-09-93    8:11a
  149.  PM311IO.NLM       8335   02-04-94    8:53a
  150.  SPXSFT1.NLM       3003   11-23-93    9:31a
  151.  SPXSFT2.NLM       3115   06-22-94    8:27a
  152. SPXNSSFT.NLM       2266   05-26-94    9:15a
  153. \4.01\
  154.      TLI.NLM      24795   09-14-93   10:17a
  155.     IPXS.NLM      10363   08-23-93    8:13a
  156.     SPXS.NLM      34630   03-02-94    1:20p
  157.    PM401.NLM       8113   02-03-94    1:09a
  158.  SPXFIX2.NLM       1023   11-23-93    8:52a
  159.  STREAMS.NLM      63201   09-14-93   10:12a
  160. NCPIDFIX.NLM       1837   01-18-94    4:22p
  161. SPXDDFIX.NLM       1112   03-10-94    9:45a
  162. SPXNSFIX.NLM       1060   05-26-94    8:29a
  163.  
  164.  
  165. Installation Instructions:
  166.  
  167. 1.  Make a backup copy of each of these NLMs you are currently running.
  168.  
  169. 2.  Copy the new NLMs into the appropriate directories.
  170.  
  171. 3.  The appropriate Patch Manager must be loaded before the patches are
  172. loaded: PATCHMAN.NLM for NetWare 3.11, PM312 for NetWare 3.12, PM401 for
  173. NetWare 4.01, MSSHIM.NLM, and PM311IO.NLM for NetWare SFT III 3.11.
  174.  
  175. 4.  Load the patches.
  176.  
  177. 5.  In a NetWare 3.11 environment, make sure to replace the SPXFX2 patch with
  178. the SPXFX3 patch.
  179.  
  180. Patch History:
  181.  
  182. ==================================================
  183. STRTL2.EXE:
  184.  
  185. ==============================
  186. XMDFIX.NLM
  187. This patch corrects a problem with utilities that use the SPX protocol to
  188. maintain communication with the server.  Typically, the client will lose the
  189. connection to the server and the following message will be displayed:
  190.  
  191. MESSAGE
  192.  
  193.      No more response buffers available
  194.  
  195. This patch also resolves a problem with lost connections never timing out,
  196. because of infinite transmit retries.
  197.  
  198. The most common occurrence is with a remote printer (RPRINTER.EXE) losing its
  199. connection to the print server (PSERVER.NLM); however, this problem may also
  200. occur with other utilities.  The connection is lost when a call to
  201. SPXSendSequencedPacket() resets a session retransmit count that causes it to
  202. fail to abort the connection when the connection is broken in one direction
  203. and maintained in another.
  204.  
  205. ==============================
  206. OTHER ISSUES
  207.  
  208. SPXLISFX.NLM
  209. This patch resolves an extremely poor performance problem for various backup
  210. software or any SPX program that is using a limited amount of receive buffers.
  211. You should use the new SPXLISFX.NLM and SPXS.NLM together.
  212.  
  213. ==============================
  214. NetWare 3.11 and NetWare 3.12 Files (These modules will run on either.)
  215. ____________________________
  216. STREAMS  NLM
  217.  
  218. This is the standard 3.12 release module.
  219. ____________________________
  220. TLI      NLM
  221.  
  222. This patch resolves some internal state checks that caused a Transport Level
  223. Interface (TLI) application to stop functioning.
  224. ____________________________
  225. SPXS     NLM
  226.  
  227. This patch resolves a buffer management problem that caused memory to be lost,
  228. thus increasing the memory allocated by STREAMS in the short-term memory pool.
  229.  
  230. This patch also ensures that the SPX connection has the correct watchdog flag
  231. set that tracks the connection to detect when it fails.
  232. ____________________________
  233. IPXS     NLM
  234.  
  235. This patch allows various applications to send larger packets.
  236.  
  237. ==============================
  238. NetWare 3.11 Files
  239. ____________________________
  240. XMDFIX   NLM
  241.  
  242. If SPX was retransmitting a packet and a new Event Control Block (ECB) was
  243. handed to SPX to transmit, the retransmit code was reset to the maximum limit,
  244. thus causing retransmissions to occur possibly indefinitely.
  245. ____________________________
  246. SPXFIX2  NLM
  247.  
  248. If SPX sent a terminate request (DataStream type 0xfe) when the ACK
  249. (ACKnowledgement code) came back (DataStream type 0xff), the request was
  250. placed in a receive Event Control Block (ECB) posted by the application. 
  251. However, the code did not release this ECB after it was finished and the ECB
  252. was lost.  SPXFIX1 attempted to rectify this problem; however, it also
  253. affected the incoming terminate requests that caused ECBs to get posted twice
  254. to the socket receive list, which caused the ECB to get linked to itself.
  255. ____________________________
  256. SPXFSFIX NLM
  257.  
  258. This patch is a session table bounds check that ensures an invalid session ID
  259. in a packet from the wire will not cause problems.
  260. ____________________________
  261. SPXLISFX NLM
  262.  
  263. This patch fixes a problem with the SPXListenForConnectedPacket function that
  264. was not informing the connection partner when the window was reopened after
  265. being closed.  This problem causes terrible performance problems because the
  266. window would not open again until a WatchDog packet was generated about 3
  267. seconds later.
  268. ____________________________
  269. SPXDDFIX.NLM
  270.  
  271. This patch fixes a problem with the way SPX handles retried connect requests. 
  272. If the connection had already transitioned into SESSION_TERMINATED when the
  273. retry came in, the retry was treated as a new connection request.
  274.  
  275. This patch also fixes a problem where SPX was still acknowledging data packets
  276. that arrived after SPXTerminateConnection was called.  This could lead to
  277. incorrect handling of the data by the application, leaving both endpoints with
  278. different information about the state and completeness of the data.
  279.  
  280. NOTE:  This SPX problem is masked by the SPXS.NLM that ships with NetWare
  281. Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE.  The
  282. fix for this specific issue is addressed by the SPXDDFIX.NLM.
  283.  
  284. ==============================
  285. NetWare 3.12 Files
  286. ____________________________
  287. SPXDDFIX.NLM
  288.  
  289. This patch fixes a problem with the way SPX handles retried connect requests. 
  290. If the connection had already transitioned into SESSION_TERMINATED when the
  291. retry came in, the retry was treated as a new connection request.
  292.  
  293. This patch also fixes a problem where SPX was still acknowledging data packets
  294. that arrived after SPXTerminateConnection was called.  This could lead to
  295. incorrect handling of the data by the application that left both endpoints
  296. with different information about the state and completeness of the data.
  297.  
  298. NOTE:  This SPX problem is masked by the SPXS.NLM that ships with NetWare
  299. Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE.  The
  300. fix for this specific issue is addressed by the SPXDDFIX.NLM.
  301.  
  302. ==============================
  303. NetWare 4.01 Files
  304. ____________________________
  305. STREAMS  NLM
  306. This patch solves the following problems:
  307.  
  308. ■  Some internal timing conditions that caused protocol stacks to stop
  309. functioning.
  310.  
  311. ■  A CLIB relationship problem.  If a new CLIB was loaded without STREAMS
  312. being reloaded, then STREAMS somtimes called the wrong address, which would
  313. probably cause an abend.
  314.  
  315. ■ A NetWare SAA 1.3 problem.  With this patch applied, all Comm Server modules
  316. can unload properly when the csdown command is issued.
  317. ____________________________
  318. TLI      NLM
  319. This patch resolved some internal state checks problems that caused a TLI
  320. application to stop functioning.
  321. ____________________________
  322. IPXS     NLM
  323.  
  324. This patch resolved a problem that caused "System Packet Receive Buffers" to
  325. be lost.
  326.  
  327. This patch also resolved a problem that will now allow various applications to
  328. send larger packets.
  329. ____________________________
  330. SPXS     NLM
  331.  
  332. This patch fixes the following problems:
  333. ■  A lost ECBs problem that occurs when NetWare closes a session and ACKs are
  334. waiting for a send ESR to complete.
  335. ■  Watchdog handling by the session not yet accepted.
  336. ■  Logical size table lookup problems that occur when the initial size was the
  337. "odd ball" (not matching any of the table sizes).
  338. ■  Releasing mp (T_CONN_REQ) after acknowledged while in the "old" SPX mode.
  339. ■  User defined and set data stream-type problems.
  340. ■  Disconnect problems (NetWare retries if discon is the response to conn ind
  341. and not timing out on snddis.)
  342. ■  If the system packet that was sent after the connection request ACK packet
  343. (session accept packet) has been destined to the "old" SPX then was
  344. ACKnowledged by the piggybacked ACK, SPX freed this implicit ACK (data packet)
  345. and treated it as regular ACK.
  346.  
  347. ==============================
  348. NetWare 4.01
  349. ____________________________
  350. SPXDDFIX.NLM
  351.  
  352. This patch fixes a problem with the way SPX handles retried connect requests. 
  353. If the connection had already transitioned into SESSION_TERMINATED when the
  354. retry came in, the retry was treated as a new connection request.
  355.  
  356. This patch also fixes a problem where SPX was still acknowledging data packets
  357. that arrived after SPXTerminateConnection was called.  This could lead to
  358. incorrect handling of the data by the application, which left both endpoints
  359. with different information about the state and completeness of the data.
  360.  
  361. NOTE:  This SPX problem is masked by the SPXS.NLM that ships with NetWare
  362. Management Systems (NMS) 2.0 and by the SPXS.NLM included in STRTL2.EXE.  The
  363. fix for this specific issue is addressed by the SPXDDFIX.NLM.
  364.  
  365. ----------------------------------------------------------------
  366. Any trademarks referenced in this document are the property of their
  367. respective owners.  Consult your product manuals for complete trademark
  368. information.
  369. ----------------------------------------------------------------
  370.  
  371.  
  372.  
  373.